import socket
import random


# 创建实例
server = socket.socket()
# 设置地址和端口
ip_port = ("127.0.0.1", 8887)
# 绑定监听
server.bind(ip_port)
# 设置最大监听数
server.listen(5)

print("准备连接....")

# while True:
# 接收数据
conn, addr = server.accept()
# 如果是python3.X以上版本，需要将str类型转为byte
msg = "连接成功!"
# 发送数据
conn.send(msg.encode())

# 不断的接收消息
while True:
    # 此处是阻塞的，只能进行一对一的通信，如果要进行一对多，需要使用异步方式
    data = conn.recv(1024)
    print(data.decode())

    # 如果接收的是exit，则退出
    if data == b'exit':
        break

    # 如果接收的是其他消息，则先发送第一个原数据
    conn.send(data)
    print('send first msg success')
    # 发送第二个随机数
    conn.send(str(random.randint(1, 1000)).encode())
    print('send second msg success')

# 关闭连接
conn.close()


# 准备连接....
# cpu-90%
# send first msg success
# send second msg success
# memory-8G
# send first msg success
# send second msg success
# harddisk-1000G
# send first msg success
# send second msg success
# display-4K
# send first msg success
# send second msg success
# exit
#
# Process finished with exit code 0